package hp.com.dao;

import hp.com.entity.PageInfo;
import hp.com.entity.Product;
import hp.com.entity.Sells;

import java.util.List;

public interface ProductDAO {

    /**
     * 使用id或者ID数组获取Sell对象
     * @param id
     * @return
     * @throws Exception
     */
    Sells getSellById(int id) throws Exception;
    List<Sells> getSellById(int[] ids) throws Exception;
    /**
     * 通过商品ID获取商品对象
     * @param id 商品ID
     * @return
     * @throws Exception
     */
    Product GetProductById(int id) throws Exception;

    /**
     * 通过数据集获取全部商品分页页面显示信息
     * @param page
     * @return
     * @throws Exception
     */
    PageInfo<Sells> listPage(PageInfo<Sells> page) throws Exception;

    /**
     * 通过数据集获取分类商品页面的展示信息
     * @param page
     * @param category
     * @return
     * @throws Exception
     */
    PageInfo<Sells> listPageByGory(PageInfo<Sells> page,int category) throws Exception;

    /**
     * 获取该商品最低和最高的价格，在suk选择之前显示于主页
     * @param id 商品ID
     * @return
     * @throws Exception
     */
    String GetLowestAndHighestPrice(int id) throws Exception;
    int getProductCount() throws Exception;
    int getProductCount(int cate) throws Exception;
    String getCateTextById(int cate) throws Exception;
    List<Integer> getCategoryIds(String cate) throws Exception;
}
